﻿using System;
using Topshelf;

namespace RabbitMQ.Subscriber
{
    class Program
    {
        /*
         * 使用前准备：
         * 安装Erlang
         * 安装RabbitMQ服务端
         */

        /* 
         * 项目运行须知：
         * 本控制台程序（RabbitMQ.Subscriber）是监听端，需要先运行起来
         * 注意事项：
         * 1）不要安装解决方案下面的bat文件，否则代码修改后，生成解决方案的时候会提示文件在使用中；
         * 2）把整个Debug目录（RabbitMQ.Subscriber\bin\Debug）里生成的文件拷贝到任何其他的地方安装，双击Install.bat即可；
         * 3）代码修改生成后，需要重新拷贝Debug目录覆盖之前的
         */

        /*
         * 参考资料：
         * http://www.cnblogs.com/liqingwen/p/6412089.html
         * http://www.cnblogs.com/ericli-ericli/p/5902270.html
         * https://github.com/EasyNetQ/EasyNetQ/wiki/Quick-Start
         */

        static void Main(string[] args)
        {
            HostFactory.Run(x =>
            {
                x.UseNLog();
                x.Service<ServiceRunner>();
                x.RunAsLocalSystem();

                x.SetDisplayName("MVCFramework Message Queue Service");//服务里显示的名称
                x.SetDescription("MVCFramework 消息队列服务");//服务里显示的简介
                x.SetServiceName("MVCFrameworkMQ");//批处理文件根据这个打开和关闭服务

                x.EnablePauseAndContinue();
            });
        }
    }
}
